package com.example.sheeranlau.MineNote.myinfo;


import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.example.sheeranlau.MineNote.R;

public class myinfo_fragment extends Fragment{

    //    private ImageView mZoomIv;
//    private Toolbar mToolBar;
//    private ViewGroup titleContainer;
//    private AppBarLayout mAppBarLayout;
//    private ViewGroup titleCenterLayout;
//    private RoundProgressBar progressBar;
//    private ImageView mSettingIv, mMsgIv;
//    private CircleImageView mAvater;
//    private CommonTabLayout mTablayout;
//    private NoScrollViewPager mViewPager;
//
//    protected static final int CHOOSE_PICTURE = 0;
//    protected static final int TAKE_PICTURE = 1;
//    private static final int CROP_SMALL_PICTURE = 2;
//    protected static Uri tempUri;
//    private CircleImageView uc_avater;
//    private ImageView coali_headbackground;
//
//    private ArrayList<CustomTabEntity> mTabEntities = new ArrayList<>();
//    private List<Fragment> fragments;
//    private int lastState = 1;
//
    private static final String TAG = "myinfo_fragment_Activity";

    public static myinfo_fragment newInstance() {
        return new myinfo_fragment();
    }

    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle saveInstanceState) {
        View view = inflater.inflate(R.layout.my_info_fragment_test, container, false);
        return view;
    }
}

//    public void onCreate(Bundle savedInstanceState) {
//        super.onCreate(savedInstanceState);
//        setContentView(R.layout.fragment_myinfo);
//        uc_avater = (CircleImageView)findViewById(R.id.uc_avater);
//        coali_headbackground = (ImageView)findViewById(R.id.coali_headbackground);
//
//        findId();
//        initListener();
//        initTab();
//        initStatus();
//
//    }
//
//    /**
//     * 初始化id
//     */
//    private void findId() {
//        mZoomIv = (ImageView) findViewById(R.id.uc_zoomiv);
//        mToolBar = (Toolbar) findViewById(R.id.toolbar);
//        titleContainer = (ViewGroup) findViewById(R.id.title_layout);
//        mAppBarLayout = (AppBarLayout) findViewById(R.id.appbar_layout);
//        titleCenterLayout = (ViewGroup) findViewById(R.id.title_center_layout);
//        progressBar = (RoundProgressBar) findViewById(R.id.uc_progressbar);
//        mSettingIv = (ImageView) findViewById(R.id.uc_setting_iv);
//        mMsgIv = (ImageView) findViewById(R.id.uc_msg_iv);
//        mAvater = (CircleImageView) findViewById(R.id.uc_avater);
//        mTablayout = (CommonTabLayout) findViewById(R.id.uc_tablayout);
//        mViewPager = (NoScrollViewPager) findViewById(R.id.uc_viewpager);
//    }
//
//    /**
//     * 初始化tab
//     */
//    private void initTab() {
//        fragments = getFragments();
//        MyFragmentPagerAdapter myFragmentPagerAdapter = new MyFragmentPagerAdapter(getSupportFragmentManager(), fragments, getNames());
//
//        mTablayout.setTabData(mTabEntities);
//        mViewPager.setAdapter(myFragmentPagerAdapter);
//    }
//
//    /**
//     * 绑定事件
//     */
//    private void initListener() {
//        mAppBarLayout.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() {
//            @Override
//            public void onOffsetChanged(AppBarLayout appBarLayout, int verticalOffset) {
//                float percent = Float.valueOf(Math.abs(verticalOffset)) / Float.valueOf(appBarLayout.getTotalScrollRange());
//                if (titleCenterLayout != null && mAvater != null && mSettingIv != null && mMsgIv != null) {
//                    titleCenterLayout.setAlpha(percent);
//                    StatusBarUtil.setTranslucentForImageView(myinfo_fragment.this, (int) (255f * percent), null);
//                    if (percent == 0) {
//                        groupChange(1f, 1);
//                    } else if (percent == 1)
//                        if (mAvater.getVisibility() != View.GONE) {
//                            mAvater.setVisibility(View.GONE);
//                        }
//                        groupChange(1f, 2);
//                    } else {
//                        if (mAvater.getVisibility() != View.VISIBLE) {
//                            mAvater.setVisibility(View.VISIBLE);
//                        }
//                        groupChange(percent, 0);
//                    }
//
//                }
//            }
//        });
//        AppBarLayoutOverScrollViewBehavior myAppBarLayoutBehavoir = (AppBarLayoutOverScrollViewBehavior)
//                ((CoordinatorLayout.LayoutParams) mAppBarLayout.getLayoutParams()).getBehavior();
//        myAppBarLayoutBehavoir.setOnProgressChangeListener(new AppBarLayoutOverScrollViewBehavior.onProgressChangeListener() {
//            @Override
//            public void onProgressChange(float progress, boolean isRelease) {
//                progressBar.setProgress((int) (progress * 360));
//                if (progress == 1 && !progressBar.isSpinning && isRelease) {
//                    // 刷新viewpager里的fragment
//                }
//                if (mMsgIv != null) {
//                    if (progress == 0 && !progressBar.isSpinning) {
//                        mMsgIv.setVisibility(View.VISIBLE);
//                    } else if (progress > 0 && mSettingIv.getVisibility() == View.VISIBLE) {
//                        mMsgIv.setVisibility(View.INVISIBLE);
//                    }
//                }
//            }
//        });
//        mTablayout.setOnTabSelectListener(new OnTabSelectListener() {
//            @Override
//            public void onTabSelect(int position) {
//                mViewPager.setCurrentItem(position);
//            }
//
//            @Override
//            public void onTabReselect(int position) {
//
//            }
//        });
//        mViewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
//            @Override
//            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
//
//            }
//
//            @Override
//            public void onPageSelected(int position) {
//                mTablayout.setCurrentTab(position);
//            }
//
//            @Override
//            public void onPageScrollStateChanged(int state) {
//
//            }
//        });
//    }
//    /**
//     * 初始化状态栏位置
//     */
//    private void initStatus() {
//        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {//4.4以下不支持状态栏变色
//            //注意了，这里使用了第三方库 StatusBarUtil，目的是改变状态栏的alpha
//            StatusBarUtil.setTransparentForImageView(myinfo_fragment.this, null);
//            //这里是重设我们的title布局的topMargin，StatusBarUtil提供了重设的方法，但是我们这里有两个布局
//            //TODO 关于为什么不把Toolbar和@layout/layout_uc_head_title放到一起，是因为需要Toolbar来占位，防止AppBarLayout折叠时将title顶出视野范围
//            int statusBarHeight = getStatusBarHeight(myinfo_fragment.this);
//            CollapsingToolbarLayout.LayoutParams lp1 = (CollapsingToolbarLayout.LayoutParams) titleContainer.getLayoutParams();
//            lp1.topMargin = statusBarHeight;
//            titleContainer.setLayoutParams(lp1);
//            CollapsingToolbarLayout.LayoutParams lp2 = (CollapsingToolbarLayout.LayoutParams) mToolBar.getLayoutParams();
//            lp2.topMargin = statusBarHeight;
//            mToolBar.setLayoutParams(lp2);
//        }
//    }
//
//    /**
//     * @param alpha
//     * @param state 0-正在变化 1展开 2 关闭
//     */
//    public void groupChange(float alpha, int state) {
//        lastState = state;
//
//        mSettingIv.setAlpha(alpha);
//        mMsgIv.setAlpha(alpha);
//
//        switch (state) {
//            case 1://完全展开 显示白色
//                mMsgIv.setImageResource(R.drawable.icon_msg);
//                mSettingIv.setImageResource(R.drawable.icon_setting);
//                mViewPager.setNoScroll(false);
//                break;
//            case 2://完全关闭 显示黑色
//                mMsgIv.setImageResource(R.drawable.icon_msg_black);
//                mSettingIv.setImageResource(R.drawable.icon_setting_black);
//                mViewPager.setNoScroll(false);
//                break;
//            case 0://介于两种临界值之间 显示黑色
//                if (lastState != 0) {
//                    mMsgIv.setImageResource(R.drawable.icon_msg_black);
//                    mSettingIv.setImageResource(R.drawable.icon_setting_black);
//                }
//                mViewPager.setNoScroll(true);
//                break;
//        }
//    }
//
//
//    /**
//     * 获取状态栏高度
//     * ！！这个方法来自StatusBarUtil,因为作者将之设为private，所以直接copy出来
//     *
//     * @param context context
//     * @return 状态栏高度
//     */
//    private int getStatusBarHeight(Context context) {
//        // 获得状态栏高度
//        int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen", "android");
//        return context.getResources().getDimensionPixelSize(resourceId);
//    }
//
//    /**
//     * 假数据
//     *
//     * @return
//     */
//    public String[] getNames() {
//        String[] mNames = new String[]{"Weather", "Moon", "Like", "Fans"};
//        for (String str : mNames) {
//            mTabEntities.add(new TabEntity(String.valueOf(new Random().nextInt(200)), str));
//        }
//
//        return mNames;
//    }
//
//    public List<Fragment> getFragments() {
//        List<Fragment> fragments = new ArrayList<>();
//        fragments.add(new ItemFragment1());
//        fragments.add(new ItemFragment1());
//        fragments.add(new ItemFragment1());
//        fragments.add(new ItemFragment1());
//        return fragments;
//    }
//
//
//    public void showChoosePicDialog(View v) {
//        AlertDialog.Builder builder = new AlertDialog.Builder(this);
//        builder.setTitle("设置头像");
//        String[] items = { "选择本地照片", "拍照" };
//        builder.setNegativeButton("取消", null);
//        builder.setItems(items, new DialogInterface.OnClickListener() {
//
//            @Override
//            public void onClick(DialogInterface dialog, int which) {
//                switch (which) {
//                    case CHOOSE_PICTURE: // 选择本地照片
//                        Intent openAlbumIntent = new Intent(
//                                Intent.ACTION_GET_CONTENT);
//                        openAlbumIntent.setType("image/*");
//                        startActivityForResult(openAlbumIntent, CHOOSE_PICTURE);
//                        break;
//                    case TAKE_PICTURE: // 拍照
//                        takePicture();
//                        break;
//                }
//            }
//        });
//        builder.create().show();
//    }
//
//    private void takePicture() {
//        String[] permissions = {Manifest.permission.WRITE_EXTERNAL_STORAGE};
//        if (Build.VERSION.SDK_INT >= 23) {
//            // 需要申请动态权限
//            int check = ContextCompat.checkSelfPermission(this, permissions[0]);
//            // 权限是否已经 授权 GRANTED---授权  DINIED---拒绝
//            if (check != PackageManager.PERMISSION_GRANTED) {
//                requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
//            }
//        }
//        Intent openCameraIntent = new Intent(
//                MediaStore.ACTION_IMAGE_CAPTURE);
//        File file = new File(Environment
//                .getExternalStorageDirectory(), "image.jpg");
//        //判断是否是AndroidN以及更高的版本
//        if (Build.VERSION.SDK_INT >= 24) {
//            openCameraIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
//            tempUri = FileProvider.getUriForFile(myinfo_fragment.this, "com.lt.uploadpicdemo.fileProvider", file);
//        } else {
//            tempUri = Uri.fromFile(new File(Environment
//                    .getExternalStorageDirectory(), "image.jpg"));
//        }
//        // 指定照片保存路径（SD卡），image.jpg为一个临时文件，每次拍照后这个图片都会被替换
//        openCameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, tempUri);
//        startActivityForResult(openCameraIntent, TAKE_PICTURE);
//    }
//
//    @Override
//    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//        super.onActivityResult(requestCode, resultCode, data);
//        if (resultCode == RESULT_OK) { // 如果返回码是可以用的
//            switch (requestCode) {
//                case TAKE_PICTURE:
//                    startPhotoZoom(tempUri); // 开始对图片进行裁剪处理
//                    break;
//                case CHOOSE_PICTURE:
//                    startPhotoZoom(data.getData()); // 开始对图片进行裁剪处理
//                    break;
//                case CROP_SMALL_PICTURE:
//                    if (data != null) {
//                        setImageToView(data); // 让刚才选择裁剪得到的图片显示在界面上
//                    }
//                    break;
//            }
//        }
//    }
//
//    /**
//     * 裁剪图片方法实现
//     *
//     * @param uri
//     */
//    protected void startPhotoZoom(Uri uri) {
//        if (uri == null) {
//            Log.i("tag", "The uri is not exist.");
//        }
//        tempUri = uri;
//        Intent intent = new Intent("com.android.camera.action.CROP");
//        intent.setDataAndType(uri, "image/*");
//        // 设置裁剪
//        intent.putExtra("crop", "true");
//        // aspectX aspectY 是宽高的比例
//        intent.putExtra("aspectX", 1);
//        intent.putExtra("aspectY", 1);
//        // outputX outputY 是裁剪图片宽高
//        intent.putExtra("outputX", 150);
//        intent.putExtra("outputY", 150);
//        intent.putExtra("return-data", true);
//        startActivityForResult(intent, CROP_SMALL_PICTURE);
//    }
//
//    /**
//     * 保存裁剪之后的图片数据
//     *
//     * @param
//     */
//    protected void setImageToView(Intent data) {
//        Bundle extras = data.getExtras();
//        if (extras != null) {
//            Bitmap photo = extras.getParcelable("data");
//            Log.d(TAG,"setImageToView:"+photo);
//            photo = ImageUtils.toRoundBitmap(photo); // 这个时候的图片已经被处理成圆形的了
//            uc_avater.setImageBitmap(photo);
//            uploadPic(photo);
//        }
//    }
//
//    private void uploadPic(Bitmap bitmap) {
//        // 上传至服务器
//        // ... 可以在这里把Bitmap转换成file，然后得到file的url，做文件上传操作
//        // 注意这里得到的图片已经是圆形图片了
//        // bitmap是没有做个圆形处理的，但已经被裁剪了
//        String imagePath = ImageUtils.savePhoto(bitmap, Environment
//                .getExternalStorageDirectory().getAbsolutePath(), String
//                .valueOf(System.currentTimeMillis()));
//        Log.e("imagePath", imagePath+"");
//        if(imagePath != null){
//            // 拿着imagePath上传了
//            // ...
//            Log.d(TAG,"imagePath:"+imagePath);
//        }
//    }
//
//    @Override
//    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
//                                           @NonNull int[] grantResults) {
//        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
//        if (requestCode == 1 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
//
//        } else {
//            // 没有获取 到权限，从新请求，或者关闭app
//            Toast.makeText(this, "需要存储权限", Toast.LENGTH_SHORT).show();
//        }
//    }
//}
